<nav id="sidebar" class="{{if $.Site.Params.showVisitedLinks }}showVisitedLinks{{end}}">

  {{ $currentNode := . }}
  {{ $showvisitedlinks := .Site.Params.showVisitedLinks }}
  <div id="header-wrapper">
    <div id="header">
      {{ partial "logo.html" . }}
    </div>
    <section id="footer">
      {{ partial "menu-footer.html" . }}
    </section>
    {{if not .Site.Params.disableSearch}}
    {{ partial "search.html" . }}
    {{end}}
  </div>

  <div class="highlightable">
    <ul class="topics">

      {{if eq .Site.Params.ordersectionsby "title"}}
      {{range .Site.Home.Sections.ByTitle}}
      {{ template "section-tree-nav" dict "sect" . "currentnode" $currentNode "showvisitedlinks" $showvisitedlinks}}
      {{end}}
      {{else}}
      {{range .Site.Home.Sections.ByWeight}}
      {{ template "section-tree-nav" dict "sect" . "currentnode" $currentNode "showvisitedlinks" $showvisitedlinks}}
      {{end}}
      {{end}}
    </ul>

    {{ if or .Site.IsMultiLingual $showvisitedlinks }}
    <section id="prefooter">
      <hr />
      <ul>
        {{ if and .Site.IsMultiLingual (not .Site.Params.DisableLanguageSwitchingButton)}}
        <li>
          <a class="padding">
            <i class="fas fa-language fa-fw"></i>
            <div class="select-style">
              <select id="select-language" onchange="location = this.value;">
                {{ $siteLanguages := .Site.Languages}}
                {{ $pageLang := .Page.Lang}}
                {{ range .Page.AllTranslations }}
                {{ $translation := .}}
                {{ range $siteLanguages }}
                {{ if eq $translation.Lang .Lang }}
                {{ $selected := false }}
                {{ if eq $pageLang .Lang}}
                <option id="{{ $translation.Language }}" value="{{ $translation.URL }}" selected>{{ .LanguageName }}
                </option>
                {{ else }}
                <option id="{{ $translation.Language }}" value="{{ $translation.URL }}">{{ .LanguageName }}</option>
                {{ end }}
                {{ end }}
                {{ end }}
                {{ end }}
              </select>
              <svg version="1.1" id="Capa_1" xmlns="http://www.w3.org/2000/svg"
                xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="255px" height="255px"
                viewBox="0 0 255 255" style="enable-background:new 0 0 255 255;" xml:space="preserve">
                <g>
                  <g id="arrow-drop-down">
                    <polygon points="0,63.75 127.5,191.25 255,63.75 		" />
                  </g>
                </g>
              </svg>
            </div>
          </a>
        </li>
        {{end}}
        <li>
          <a class="padding" target="_blank" href="https://t.goodrain.com">
            <i class="fas fa-fw fa-discourse"></i> 社区
          </a>
        </li>
        <li>
          <a class="padding" target="_blank" href="https://blog.goodrain.com">
            <i class="fas fa-fw fa-blog"></i> 博客
          </a>
        </li>
        <li>
          <a class="padding" target="_blank" href="https://www.rainbond.com/docs/enterprise_service/">
            <i class="fas fa-fw fa-bookmark"></i> 企业服务
          </a>
        </li>
        {{ if $showvisitedlinks}}
        <li><a class="padding" href="#" data-clear-history-toggle="">
          <i class="fas fa-history fa-fw"></i>清除浏览历史</a>
        </li>
        <!-- <li style="margin-top:1em;"><a target="_blank" class="padding" href="http://v5-0.docs.rainbond.com/docs/v5.0/"><i class="fas fa-camera fa-fw"></i> V5.0 版本文档</a></li> -->
        {{ end }}
      </ul>
    </section>
    {{ end }}
  </div>
</nav>

<!-- templates -->
{{ define "section-tree-nav" }}
{{ $showvisitedlinks := .showvisitedlinks }}
{{ $currentNode := .currentnode }}
{{with .sect}}
{{if .IsSection}}
{{safeHTML .Params.head}}
<li data-nav-id="{{.URL}}" title="{{.Title}}" class="dd-item 
        {{if .IsAncestor $currentNode }}parent{{end}}
        {{if eq .UniqueID $currentNode.UniqueID}}active{{end}}
        {{if .Params.alwaysopen}}parent{{end}}
        ">
  <a href="{{.RelPermalink}}">
    {{safeHTML .Params.Pre}}{{or .Params.menuTitle .LinkTitle .Title}}{{safeHTML .Params.Post}}
    {{ if $showvisitedlinks}}
    <i class="fas fa-check read-icon"></i>
    {{ end }}
  </a>
  {{ $numberOfPages := (add (len .Pages) (len .Sections)) }}
  {{ if ne $numberOfPages 0 }}
  <ul>
    {{ $currentNode.Scratch.Set "pages" .Pages }}
    {{ if .Sections}}
    {{ $currentNode.Scratch.Set "pages" (.Pages | union .Sections) }}
    {{end}}
    {{ $pages := ($currentNode.Scratch.Get "pages") }}

    {{if eq .Site.Params.ordersectionsby "title"}}
    {{ range $pages.ByTitle }}
    {{ if and .Params.hidden (not $.showhidden) }}
    {{else}}
    {{ template "section-tree-nav" dict "sect" . "currentnode" $currentNode "showvisitedlinks" $showvisitedlinks }}
    {{end}}
    {{ end }}
    {{else}}
    {{ range $pages.ByWeight }}
    {{ if and .Params.hidden (not $.showhidden) }}
    {{else}}
    {{ template "section-tree-nav" dict "sect" . "currentnode" $currentNode "showvisitedlinks" $showvisitedlinks }}
    {{end}}
    {{ end }}
    {{end}}
  </ul>
  {{ end }}
</li>
{{else}}
{{ if not .Params.Hidden }}
<li data-nav-id="{{.URL}}" title="{{.Title}}" class="dd-item {{if eq .UniqueID $currentNode.UniqueID}}active{{end}}">
  <a href="{{ .RelPermalink}}">
    {{safeHTML .Params.Pre}}{{or .Params.menuTitle .LinkTitle .Title}}{{safeHTML .Params.Post}}
    {{ if $showvisitedlinks}}<i class="fas fa-check read-icon"></i>{{end}}
  </a>
</li>
{{ end }}
{{end}}
{{ end }}
{{ end }}